package com.java.interface_implements;

/**
 * 接口 - 祖先
 */
public interface GrandA {
    String NAME = "grand";
    
    void grandInterfaceFunc();
    
    // JDK8以后接口中可通过default定义有默认方法体的抽象方法，存在默认方法体的抽象方法不硬性要求实现类重写
    default void grandAInterfaceDefaultFunc() {
        System.out.println("祖先成员方法的默认方法体");
    }
    
    // JDK9以后接口中可定义不能被重写且必须提供方法体的私有方法，私有方法只能在接口内部使用
    // private void privateInterfaceFunc() {}
    
    // JDK8以后接口中可定义不能被重写且必须提供方法体的静态方法
    static void staticInterfaceFunc() {
        System.out.println("祖先静态成员方法");
    }
    
    // 此处不允许使用修饰符 final
    // final void finalInterfaceFunc() {}
}
